import {
  getUserLogsPageList,
  updateAccessUserInfo,
  changeAccessUserPassword
} from "@/api/access";
import { ref } from "vue";

// 空数据提示（错误提示）
export const tableEmptyText = ref("");

const request = {
  get: {
    /**
     * 获取日志分页列表
     *
     * @param params 请求参数
     * @returns
     */
    logsPageList: async (params: object) => {
      try {
        const res = await getUserLogsPageList(params);
        tableEmptyText.value = "资料暂无";
        return {
          data: res.data.list,
          total: res.data.total
        };
      } catch (error) {
        tableEmptyText.value = error.message;
      }
    }
  },
  put: {
    /**
     * 更新用户信息
     *
     * @param id 请求ID
     * @param data 请求参数
     */
    updateUserInfo: async (data: object) => {
      await updateAccessUserInfo(data);
    },
    /**
     * 更新密码
     *
     * @param oldPassword 原密码
     * @param newPassword 新密码
     */
    changePassword: async (oldPassword: string, newPassword: string) => {
      await changeAccessUserPassword({
        oldPassword,
        newPassword
      });
    }
  }
};

export default request;
